package com.gymmsystem.GYMMSystem.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.gymmsystem.GYMMSystem.entity.MemberCardType;
import java.math.BigDecimal;
import java.util.List;

/**
 * 会员卡类型服务接口
 */
public interface MemberCardTypeService extends IService<MemberCardType> {

    /**
     * 获取所有可用的会员卡类型
     */
    List<MemberCardType> getAvailableCardTypes();

    /**
     * 根据卡类型名称查询
     */
    MemberCardType getByCardName(String cardName);

    /**
     * 更新会员卡价格
     */
    boolean updateCardPrice(Long cardTypeId, BigDecimal price);

    /**
     * 更新会员卡状态
     */
    boolean updateCardStatus(Long cardTypeId, Integer status);

    /**
     * 更新会员卡价格和状态
     */
    boolean updateCardPriceAndStatus(Long cardTypeId, BigDecimal price, Integer status);

    /**
     * 初始化默认会员卡类型
     */
    void initDefaultCardTypes();
}